//SPDX-FileCopyrightText: Copyright 2025-2025 深圳市同心圆网络有限公司
//SPDX-License-Identifier: GPL-3.0-only

export type UnkwownContent = {};

export type TextContent = {
    text: string;
    font_size: string;
    font_weight: string;
};

// 基本图形
export type BasicRectangleContent = {
    text: string;
    font_size: string;
    font_weight: string;
};

export type BasicEllipseContent = {
    text: string;
    font_size: string;
    font_weight: string;
};

export type BasicSvgContent = {
    svg_id: string;
};

export type BasicImageContent = {
    file_id: string;
};

export type BasicLinkContent = {
    link_name: string;
    link_url: string;
};

//llm相关节点
export type LlmAskContent = {
    content: string;
};

export type LlmAnswerContent = {
    content: string;
    provider_name: string;
    model_name: string;
    done: boolean;
};


//develop 相关
export type DevelopIssueContent = {
    git_serv_id: string;
    owner_path: string;
    repo_path: string;
    issue_number: string;
};

export type DevelopMermaidContent = {
    content: string;
};


export type NodeContent = {
    UnkwownContent?: UnkwownContent;
    TextContent?: TextContent;

    BasicRectangleContent?: BasicRectangleContent;
    BasicEllipseContent?: BasicEllipseContent;
    BasicSvgContent?: BasicSvgContent;
    BasicImageContent?: BasicImageContent;
    BasicLinkContent?: BasicLinkContent;

    LlmAskContent?: LlmAskContent;
    LlmAnswerContent?: LlmAnswerContent;

    DevelopIssueContent?: DevelopIssueContent;
    DevelopMermaidContent?: DevelopMermaidContent;
};